home *** CD-ROM | disk | FTP | other *** search
/ Meeting Pearls 1 / Meeting Pearls Vol 1 (1994).iso / installed_progs / text / faqs / oberon-faq.system < prev    next >
Encoding:
Internet Message Format  |  1994-05-11  |  7.1 KB

  1. Subject: Comp.lang.oberon FAQ (system)
  2. Newsgroups: comp.lang.oberon,comp.answers,news.answers
  3. From: mikeg@psg.com (Mike Gallo)
  4. Date: Mon, 9 May 1994 18:29:37 GMT
  5.  
  6. Archive-name: Oberon-FAQ/system
  7.  
  8.      (*  * *  * *  * *  * *  * *  * *  * *  * *  * *  * *  *)
  9.  
  10.      Many FAQ lists, including this one, are available by anonymous
  11. ftp from rtfm.mit.edu in the /pub/usenet/news-answers directory.  
  12.      Thanks to all who have contributed!  Further additions,
  13. corrections, and suggestions are welcome.
  14.  
  15. mikeg@psg.com
  16.  
  17.      (*  * *  * *  * *  * *  * *  * *  * *  * *  * *  * *  *)
  18.  
  19. Comp.lang.oberon Frequently Asked Questions
  20. The Operating System
  21.  
  22.  
  23. Copyright 1994 Michael Gallo
  24. (c) 1994 Michael Gallo
  25.  
  26.  
  27. THE OBERON SYSTEM
  28.  
  29. >From "The Oberon Guide"
  30.  
  31.           For the present, we focus on the system Oberon, beginning
  32.      with a brief overview of its design principles. The underlying
  33.      dynamic model is extremely simple. There exists a single
  34.      process acting as a common carrier of multiple tasks. This
  35.      process repetitively interprets commands, which are the
  36.      official entities of execution in Oberon. Commands are atomic
  37.      actions operating on the global state of the system. Unlike
  38.      customary interactive programs, they rigorously avoid direct
  39.      dialogs with the system user.
  40.  
  41.      Besides "single-process multitasking" and execution of
  42. commands in lieu of programs, the Oberon System also features
  43. automatic garbage collection, memory resident modules, text as a
  44. built-in abstract data type, tools for editing text and graphics,
  45. and program development tools.
  46.  
  47. >From "Oberon: A Glimpse at the Future"
  48.  
  49.           The result is a system that provides efficiency and
  50.      reliability rather than offering inflated size, which
  51.      dramatically increases the probability of bugs and flaws.
  52.           What is most astonishing about Oberon is its smallness. 
  53.      The core operating system -- including the Oberon compiler --
  54.      occupies only 131 KB, which is smaller than most [Microsoft
  55.      (tm)] Windows utilities.
  56.  
  57.  
  58. OBERON SYSTEM 3
  59.  
  60. >From "Oberon System 3 -- A Realm of Persistent Objects"
  61.  
  62.           We soon decided to realize our ideas by developing System
  63.      3, an evolutionary version of the original Oberon system. From
  64.      our vision and from examples like the one in Figure 1 it
  65.      followed immediately that System 3 needs to be settled one
  66.      important step beyond the ordinary state of object-oriented
  67.      programming because it needs to be able to manage hundreds or
  68.      even thousands of persistent objects and components that can
  69.      appear in extensive variety, including at least character
  70.      patterns, formulae, all kinds of figures, pictures, gadgets
  71.      and widgets. What was obviously needed is a central object
  72.      management and some concept like object library.
  73.  
  74.  
  75. GADGETS
  76.  
  77. >From The GADGETS User Interface Management System
  78.  
  79.           The GADGETS user interface management system (UIMS)
  80.      is a graphical user interface to the Oberon system. 
  81.      Although it is based on the representation model of
  82.      windowing user interfaces such as X Windows and
  83.      Presentation Manager, GADGETS is a conceptual departure
  84.      from the conventional graphical user interface (GUI). 
  85.      Several features such as the separation of application
  86.      code and user interface, the interactive modification of
  87.      user interfaces while applications are executing, the
  88.      automatic generation of default user interfaces for
  89.      applications, and the simplification of user interface
  90.      programming have been incorporated into GADGETS.  The
  91.      result is smaller, easier to build application programs
  92.      with a high level of integration between each other and
  93.      the Oberon system.  The GADGETS UIMS is extensible and
  94.      provides a prototyping environment for alternative man-
  95.      machine interaction styles.  The high level of
  96.      integration of GADGETS with the Oberon system makes the
  97.      addition of graphical user interfaces to existing Oberon
  98.      applications a relatively easy task.
  99.  
  100. VERSION COMPATIBILITY
  101.  
  102. "Is Oberon System version X compatible with version Y?"  
  103.  
  104. According to templ@inf.ethz.ch (Josef Templ), 
  105.  
  106.      The Oberon ancestry is as follows
  107.      Oberon = V1 ( V2  V4 | System3 )
  108.           The main difference between V1 and V2 is the introduction
  109.      of an extensible text model and the text editor Write.
  110.           The main difference between V2 and V4 is the unification
  111.      of the two text editors Edit and Write. In order to avoid
  112.      confusion with System3, the direct successor of V2 is not
  113.      named V3 but V4.
  114.           The main difference between V2 and System3 is that
  115.      System3 introduced (a year later) a more general object model
  116.      (not restricted to text elements) and the notion of persistent
  117.      object libraries.
  118.           Many programs port between the different versions without
  119.      any changes. Some programs need simple textual substitutions,
  120.      and only very few need a considerable amount of reengineering
  121.      (e.g. Write, Script).
  122.  
  123.  
  124. CONCURRENT OBERON
  125.  
  126. >From "Adding Concurrency to the Oberon System"
  127.  
  128.           Concurrency was not supported in the original Oberon
  129.      system. We have argued that, although the Oberon experience
  130.      has demonstrated that concurrency is not needed to support
  131.      interactive applications in a system with a multiple window
  132.      user interface, concurrency is nonetheless desirable in a
  133.      single user system. We have demonstrated that it can be
  134.      introduced without a significant increase in size or
  135.      complexity by developing the Concurrent Oberon system. Since
  136.      all interfaces remained the same or were extended, the
  137.      semantics of the Oberon loop were preserved. Concurrent Oberon
  138.      is completely compatible with the standard system [version 4]
  139.      and all applications run without change.
  140.  
  141.  
  142. BIBLIOGRAPHY
  143.  
  144.      Sources cited in the FAQ list that are not listed in the
  145. bibliography are electronically available in PostScript and/or
  146. Oberon text formats from ETH Zrich.  They can be acquired by
  147. anonymous ftp from:
  148.  
  149.      ftp.inf.ethz.ch:/Oberon,
  150.      wuarchive.wustl.edu:/languages/Oberon, and
  151.      gatekeeper@dec.com:/pub/plan/Oberon
  152.  
  153.  
  154. "Designing a System from Scratch" by N. Wirth; Structured
  155. Programming; 10,1 (January 1989) 10-18.
  156.  
  157. "The Oberon System" by N. Wirth and J. Gutknecht; Software:
  158. Practice and Experience; 19,9 (September 1989) 857-893.
  159.  
  160. The Oberon System: User Guide and Programmer's Manual by M. Reiser;
  161. ACM Press; 1992.  This was reviewed in Computing Reviews articles
  162. 9109-0679, 9209-0651, 9209-0652, and 9207-0443.
  163.  
  164. Project Oberon: The Design of an Operating System and Compiler by
  165. N. Wirth and J. Gutknecht; ACM Press 1992.
  166.  
  167. "Implementing an Operating System on Top of Another" by M. Franz;
  168. Software: Practice and Experience; 23,6 (June 1993) 677-692.
  169.  
  170. "OBERON for PC on an MS-DOS Base" by A. R. Disteli; Swiss Federal
  171. Institute of Technology (ETH Zrich); Technical Report #203,
  172. November 1993.
  173.  
  174. Distributed Object-Oriented Programming in a Network of Personal
  175. Workstations by Spiros Lalis; Swiss Federal Institute of Technology
  176. (ETH Zrich); 1994 (in preparation).
  177.  
  178.  
  179. -- 
  180. Everything we do is futile, but we must do it anyway.
  181.                 -- Mahatma Gandhi
  182.  
  183.